<template>
	<view class="inspectContent">
		<view class="upper">
			<commonNavBar title="双随机检查" :showRobot="false"   >
				<template v-slot:right > 
					<image src="/static/img/start-route.png" style="width: 35rpx;height: 35rpx;margin-right: 10rpx;" v-if="roteStatus" @click="routePlan" />
					<image src="/static/img/navigation.png" style="width: 35rpx;height: 35rpx;margin-right: 10rpx;" @click="checkRoute" />
					<image src="/static/img/screen.png" class="screen" style="width: 35rpx;height: 35rpx;" @click="open" />	
				</template>
			</commonNavBar>    
			<view class="step">
				<view v-for="(tabs,index) in stepList" :key="index" @click="stepActive(index)">
					<view :class="{'active': listType == tabs.id}">
						{{ tabs.step }}
					</view>
				</view>
			</view>
		</view>
		<view class="centre">
			<z-paging ref="paging" autowire-list-name="inspectList" autowire-query-name="listData" :auto="true"
				:auto-show-back-to-top="true">
				<view class="li" v-for="(list, index) in inspectList" :key="index" @tap="showCheckInfo(list.COMPANY_ID,list.IS_AUTHORITY,list.CHECK_STAT,list.CHECK_ID)">
					<view class="float">{{ list.PROCESS_NAME }}</view>
					<view class="h1">{{ index + 1 }}.{{ list.COMPANY_NAME }}</view>
					<view class="h2">风险等级:{{ list.RISK_LEVEL }}</view>
					<view class="h2">许可证号:{{ list.LICENSE }}</view>
					<view class="h2" v-if="listType == 0">所属区局:{{ list.DEPT_QU_NAME }}</view>
					<view class="h2" v-if="listType == 0">监管单位:{{ list.DEPT_NAME }}</view>
					<view class="h2" v-if="listType == 1">检查日期:{{list.CHECK_TIME}}</view>
					<view class="h2" v-if="listType == 1">监管类型:双随机检查</view>
					<view class="h2" v-if="listType == 1">处理结果:{{ list.PROCESS_RESULTS }}</view>
					<view class="h2" >企业地址:{{ list.ADDRESS  }}</view>
					<view class="h2" >联系人:{{ list.CONTACT }}</view>
					<view class="h2" >联系电话:{{ list.CONTACT_PHONE   == 'undefined' ? '': list.CONTACT_PHONE }}</view>
					<view class="order" v-if="listType == 0">
						<view class="dd" :class="( list.CHECK_STAT == '1' ? 'Active' : '')">
							<text class="state" v-text="list.CHECK_STAT == '1' ? '已检查':'未检查'"></text>
							<view class="triangle"></view>
						</view>
					</view>
					<image class="navigator-check" v-if="roteStatus" @tap.stop="checkedActive(list.roteCheck,index)"
					  :src="list.roteCheck ? '../../../static/img/right-bottom-checked.png' : '../../../static/img/right-bottom-check.png'"
					 ></image>
				</view>
			</z-paging>
		</view>
		<!-- <view class="fixed">当前已搜索到{{ total }}条数据</view> -->
		<CommonSearchCompontVue  @seacharResult="seacharResult" :showTime="listType == 1" :showCheckStatus="true" :showProcessResults="listType == 1"
		 :showSearchCompont="showSearchCompont"  ></CommonSearchCompontVue>
	</view>
</template>

<script>
	import CommonSearchCompontVue from '@/components/CommonSearchCompont.vue'
	import commonNavBar from '@/components/CommonNavBar.vue';
	
	export default {
		components:{
			commonNavBar,
			CommonSearchCompontVue
		},
		data() {
			return { 
				stepList: [{
					step: '双随机检查',
					id: 0,
					active: true
				}, {
					step: '检查结果',
					id: 1,
					active: false
				}],
				roteStatus: false,
				roteCheckedIndex:[],//导航选中的企业id
				listType: 0,
				showSearchCompont:false,
				inspectList: [], //检查列表
				resultList: [], //检查结果列表
				total: 0,
				searchParams:{
					companyName: '', //企业名称
					firstType: '', //一级业态
					twoType: '', //二级业态
					companyIndex:0, // 企业环节
					companyLevel:'',//安全等级
					inspectStatus:'', // 检查情况
					companyProcess:'', // 企业环节
					supervisePerson:'', // 监管人
					existPeriphery:'', // 是否校园周边
					existWholesaleAgricultura:'', // 是否农产品批发
					existEx:'', // 是否异常主体
					onlyPrePackaging:'', // 仅售预包装食品
					haveSpecialFood:'', // 是否有特殊食堂
					address:'', // 企业地址
					startTime :'',
					endTime:'',
					pageNum:1,
					pageSize:10,
				}
			}
		},
		onLoad(options) {
			//获取基础信息
			//this.initSearchData()
		}, 
		methods: {
			open() {
				this.showSearchCompont = true
			},
			checkedActive(state,index){
				const  that = this;
				//导航选择按钮 
				if(state == undefined || !state) {
					this.$set(this.inspectList[index],"roteCheck",true);
					this.roteCheckedIndex.push( this.inspectList[index].ID );
				} else {
					this.$set(this.inspectList[index],"roteCheck",false);
					// 使用splice方法删除数组中的某个数字 
					let indexe = this.roteCheckedIndex.indexOf(this.inspectList[index].ID); // 找到数字3的索引
					if (indexe > -1) {
					  this.roteCheckedIndex.splice(indexe, 1); // 删除索引为index的元素
					}
				} 
			},
			checkRoute(){
				this.roteStatus = !this.roteStatus
			},
			goBack() {
				uni.navigateBack();
			},
			seacharResult(e){
				//检索条件点击确定或者删除的时候在执行
				this.showSearchCompont =  false;
				if(e.search){
					this.searchParams = e;
					this.$refs.paging.reload();
				} 
			}, 
			routePlan(){
				//路线规划
				const that = this;
				if(that.roteCheckedIndex.length == 0){
					uni.showToast({
						icon:'error',
						title:'请先选择企业'
					})
					return;
				}
			 
				uni.navigateTo({
					url: '/pages/inspect/route',
				  success: function(res) {
					// 通过eventChannel向被打开页面传送数据
					res.eventChannel.emit('searchData',{
						companyArr:that.roteCheckedIndex 
					})
				  }
				})
				 
				
			},
			async listData(pageNo, pageSize, reload) {
				//检查列表
			 
				 this.searchParams.pageNum = pageNo;
				 this.searchParams.pageSize= pageSize;
				 this.searchParams.type = this.tabIndex;

				try {
					if (this.listType == 0) {
						const res = await uni.$api.doubleRandomCheckPage(this.searchParams);
						this.$refs.paging.completeByKey(res.data.data, this.listType);
					} else {
						//已检查列表
						const res = await uni.$api.doubleRandomCheckResultPage(this.searchParams);
						this.$refs.paging.completeByKey(res.data.data, this.listType);
					}
				} catch (error) {
					console.error(error)
					this.$refs.paging.complete(false);
				}


			},  
			stepActive(index) {
				//切换tab样式
				for (var i = 0; i < this.stepList.length; i++) {
					this.stepList[i].active = false;
				}
				this.stepList[index].active = true;
				//切换数据类型
				this.listType = index;
				this.$refs.paging.reload();
			},
			showCheckInfo(companyId,isAuthority,status,checkId) {
				const that = this;
				if (this.listType == 0 && status != 1) {
					if(isAuthority != '1'){
						//没有权限操作
						uni.showToast({
							icon:'error',
							title: '无操作权限',
							duration: 4000
						})
						return;
					}
					uni.navigateTo({
						url: '/pages/inspect/doubleRandom/addInspectTabs?companyId=' + companyId  + "&detail="+ (status == 1)
						,events: {
							// 为指定事件添加一个监听器，获取被打开页面传送到当前页面的数据
							reloadList: function(data) {
							   that.$refs.paging.reload();
							} 
						}
					})
				} else {
					uni.navigateTo({
						url: '/pages/inspect/resultActive?id=' + checkId 
					})
				}
			},
			close() {
				this.$refs.popup.close()
			},
			cancellation() {
				this.close()
			} 
		},
		watch: {

		},
	}
</script>

<style lang="scss">
	.inspectContent {
		background: #F9F9F9;
		height: calc(100vh - 195rpx);

		.upper {
			position: fixed;
			z-index: 1;
			top: 0;
			left: 0;
			width: 100%;

			.title {
				background: url('../../../static/img/inspectBg.png');
				background-size: cover;
				width: 100%;
				height: 115rpx;
				line-height: 115rpx;
				position: relative;
				display: flex;
				justify-content: center;

				.arrow {
					position: absolute;
					left: 33rpx;
					top: 50%;
					transform: translate(0%, -50%);
					width: 100rpx;
					height: 100rpx;

					&::before {
						display: block;
						content: "";
						position: absolute;
						top: 50%;
						left: 0%;
						width: 20rpx;
						height: 20rpx;
						border-left: 1px solid #fff;
						border-top: 1px solid #fff;
						transform: translate(0%, -50%) rotate(-45deg);
					}
				}

				text {
					font-size: 30rpx;
					font-family: PingFangSC-Medium, PingFang SC;
					font-weight: 500;
					color: #FFFFFF;
					letter-spacing: 1px;
				}

				.screen {
					position: absolute;
					right: 30rpx;
					top: 50%;
					transform: translate(0%, -50%);
					width: 35rpx;
					height: 33rpx;
				}

				.routePlanning {
					position: absolute;
					right: 80rpx;
					top: 50%;
					transform: translate(0%, -50%);
					width: 28rpx;
					height: 33rpx;
				}
				
				.routePlanning2 {
					position: absolute;
					right: 120rpx;
					top: 50%;
					transform: translate(0%, -50%);
					width: 28rpx;
					height: 33rpx;
				}
			}

			.step {
				display: flex;
				justify-content: space-around;
				height: 80rpx;
				line-height: 80rpx;
				background: #F9F9F9;

				view {
					position: relative;
					font-size: 25rpx;
					font-family: PingFangSC-Regular, PingFang SC;
					font-weight: 400;
					color: #999999;

					&.active {
						color: #0552A9;

						&::before {
							display: block;
							content: "";
							position: absolute;
							left: 50%;
							bottom: 0%;
							transform: translate(-50%, 0%);
							width: 100rpx;
							height: 5rpx;
							background: #0552A9;
						}
					}
				}
			}
		}

		.centre {
			margin: 195rpx 0 0 0;
			padding: 0 17.5rpx;
			height: calc(100vh - 280rpx);
			overflow-x: hidden;

			.z-paging-content-fixed {
				padding: 195rpx 0 0 0;
			}

			.li {
				background: linear-gradient(180deg, #FFFFFF 0%, #FFFFFF 100%);
				box-shadow: 0rpx 8rpx 15rpx 0rpx rgba(0, 0, 0, 0.05);
				border-radius: 15rpx;
				padding: 30rpx 30rpx 15rpx 28rpx;
				position: relative;
				margin: 13rpx 20rpx 0;

				.float {
					position: absolute;
					top: 0;
					right: 0;
					// width: 97rpx;
					padding: 0 10rpx;
					height: 46rpx;
					line-height: 46rpx;
					background: linear-gradient(180deg, #5DA1FF 0%, #0054C9 100%);
					border-radius: 0rpx 11rpx 0rpx 11rpx;
					font-size: 18rpx;
					font-family: PingFangSC-Medium, PingFang SC;
					font-weight: 500;
					color: #FFFFFF;
					text-align: center;
				}

				.h1 {
					font-size: 24rpx;
					font-family: PingFangSC-Medium, PingFang SC;
					font-weight: 500;
					color: #333333;
					line-height: 1;
					margin: 0 0 14rpx 0;
				}

				.h2 {
					font-size: 19rpx;
					font-family: PingFangSC-Regular, PingFang SC;
					font-weight: 400;
					color: #666666;
					line-height: 1;
					margin: 12rpx auto;
				}

				.order {
					margin: 24rpx auto 0;
					display: flex;
					justify-content: flex-start;
					align-items: center;
					width: 100%;
					overflow-x: auto;

					.dd {
						width: 121rpx;
						height: 53rpx;
						border-radius: 9rpx;
						border: 1rpx solid #979797;
						font-size: 21rpx;
						font-family: PingFangSC-Medium, PingFang SC;
						font-weight: 500;
						color: #A1A1A1;
						display: flex;
						align-items: center;
						justify-content: center;
						flex-direction: column;
						line-height: 1;
						position: relative;
						text-indent: -10rpx;

						.state {
							margin: 4rpx auto 0;
							text-indent: -10rpx;
						}

						.triangle {
							width: 0;
							height: 0;
							border-top: 8rpx solid transparent;
							border-bottom: 8rpx solid transparent;
							border-left: 10rpx solid #A1A1A1;
							position: absolute;
							top: 50%;
							right: 4rpx;
							transform: translate(-50%, -50%);
						}

						&+.dd {
							margin: 0 0 0 12rpx;
						}

						&.Active {
							border: none;
							background: #F9A240;
							color: #fff;

							.triangle {
								border-left: 10rpx solid #fff;
							}
						}

						&.special {
							border: none;
							background: #00BE8C;
							color: #fff;

							.triangle {
								border-left: 10rpx solid #fff;
							}
						}
					}
				}
			}
		}

		.fixed {
			display: none;
			position: fixed;
			left: 50%;
			bottom: 26rpx;
			transform: translate(-50%, 0);
			width: 100%;
			text-align: center;
			font-size: 18rpx;
			font-family: PingFangSC-Regular, PingFang SC;
			font-weight: 400;
			color: #A7A7A7;
		}

		.popupContent {
			background: #FFFFFF;
			border-radius: 20rpx 20rpx 0 0;

			.uni-datetime-picker {
				width: 100%;
			}

			.title {
				width: 100%;
				height: 80rpx;
				line-height: 80rpx;
				background: url('../../../static/img/popupTitle.png') no-repeat center center;
				background-size: cover;
				font-size: 25rpx;
				font-family: PingFangSC-Medium, PingFang SC;
				font-weight: 500;
				color: #FFFFFF;
				text-indent: 45rpx;
			}

			.ul {

				.li {
					padding: 0 45rpx;
					margin: 0 auto;
					display: flex;
					justify-content: space-between;
					align-items: center;
					height: 68rpx;
					line-height: 68rpx;
					border-bottom: 1px solid #d6d6d6;

					.left {
						font-size: 21rpx;
						font-family: PingFangSC-Regular, PingFang SC;
						font-weight: 400;
						color: #333333;
					}

					.right {

						input {
							font-size: 21rpx;
							font-family: PingFangSC-Regular, PingFang SC;
							font-weight: 400;
							color: #999999;
							width: 460rpx;
							text-indent: 20rpx;
						}

						.placeholder-class {
							color: #999999;
						}

						.uni-stat__select {
							width: 460rpx;

							/deep/.uni-select {
								border: none;
							}
						}

						.uni-date {
							width: 460rpx;

							/deep/.uni-date-editor--x {
								border: none;
							}
						}
					}

					&:nth-child(odd) {
						background: #F9F9F9;
					}

					&:last-child {
						border-bottom: none;
					}
				}

				.li:last-child {
					/deep/.uni-select__selector {
						top: initial;
					}

					/deep/.uni-popper__arrow {
						display: none;
					}
				}
			}

			.button {
				margin: 58rpx auto 0;
				padding: 0 95rpx 24rpx 95rpx;
				display: flex;

				button {
					width: 269rpx;
					height: 55rpx;
					line-height: 55rpx;
					background: #0552A9;
					border-radius: 10rpx;
					font-size: 20rpx;
					font-family: PingFangSC-Regular, PingFang SC;
					font-weight: 400;

					&.determine {
						color: #fff;
					}

					&.cancellation {
						background: none;
						border: 1rpx solid #979797;
						color: #979797;
					}
				}
			}
		}
	}
	.navigator-check{
		position: absolute;
		width: 50px;
		height: 50px;
		z-index: 9;
		right: 0px;
		margin-top: -40px;
		border-radius: 0px 0px 11px 0px;
	}
</style>